<template>

<!-- 根组件 总入口 -->

    <div class="app-content">
    
        <!-- MMP...千万别写到根容器外面.....这错犯的 -->
        <!-- 顶部 header 区 -->
        <mt-header fixed title="webpack+vue项目练习">
			<span slot="left" @click="back" v-show="flag">
				<mt-button icon="back">返回</mt-button>
			</span>
		</mt-header>  <!--标签里面无法写内容，需要些在 title 属性里面-->
        
        <!-- router-view 区 -->
		<transition>
			<router-view></router-view>
		</transition>
        
        <!-- 底部 footbar 区 -->
        <nav class="mui-bar mui-bar-tab">
			<router-link class="mui-tab-item-bug" to="/home">
				<span class="mui-icon mui-icon-home"></span>
				<span class="mui-tab-label">首页</span>
			</router-link>
			<router-link class="mui-tab-item-bug" to="/member">
				<span class="mui-icon mui-icon-contact"></span>
				<span class="mui-tab-label">会员</span>
			</router-link>
			<router-link class="mui-tab-item-bug" to="/shopcar">
				<span class="mui-icon mui-icon-extra mui-icon-extra-cart"><span class="mui-badge" id="badge">{{ $store.getters.badgeNum }}</span></span>
				<span class="mui-tab-label">购物车</span>
			</router-link>
			<router-link class="mui-tab-item-bug" to="/search">
				<span class="mui-icon mui-icon-search"></span>
				<span class="mui-tab-label">搜索</span>
			</router-link>
		</nav>

    </div> 
</template>

<script>

// 一个路由状态的监听需要这么多步骤去搞定......
	export default {
		data () {
			return {
				flag: true,
			}
		},
		methods: {
			back () {
				this.$router.go(-1);
			}
		},
		created() {
			this.flag = this.$route.path === '/home'? false : true;
		},
		watch: {
			'$route.path': function (newV) {
				if (newV === '/home'){
					this.flag = false;
				} else {
					this.flag = true;
				}
			}
		},
	}
</script>

<style lang="scss" scoped>
// lang 属性值为 scss，sass已经淘汰不用了，会报错
    .app-content {
        padding-top: 40px;
		padding-bottom: 50px;
		overflow-x: hidden; // 注意点11
    }

	.mint-header {
		z-index: 99;
	}

	.v-enter {
		opacity: 0;
		transform: translateX(100%);
	}
	.v-leave-to {
		opacity: 0;
		transform: translateX(-100%);
		position: absolute; // 特别 注意点2
	}
	.v-enter-active {
		transition: transform 0.5s ease, opacity 0.5s ease;
	}
	.v-leave-active {
		transition: transform 0.5s ease, opacity 0.5s ease;
	}

	// 解决 MUI js 在下面子组件里导入之后造成底部按钮无法切换路由的问题
	.mui-bar-tab .mui-tab-item-bug.mui-active {
		color: #007aff;
	}
	.mui-bar-tab .mui-tab-item-bug {
		display: table-cell;
		overflow: hidden;
		width: 1%;
		height: 50px;
		text-align: center;
		vertical-align: middle;
		white-space: nowrap;
		text-overflow: ellipsis;
		color: #929292;
	}
	.mui-bar-tab .mui-tab-item-bug .mui-icon {
		top: 3px;
		width: 24px;
		height: 24px;
		padding-top: 0;
		padding-bottom: 0;
	}
	.mui-bar-tab .mui-tab-item-bug .mui-icon {
		top: 3px;
		width: 24px;
		height: 24px;
		padding-top: 0;
		padding-bottom: 0;
	}
	.mui-bar-tab .mui-tab-item-bug .mui-icon~.mui-tab-label {
		font-size: 11px;
		display: block;
		overflow: hidden;
		text-overflow: ellipsis;
	}
</style>



